﻿function GetProbe() {
	var myData = [
			['1', "mysql探测器", "<img src='images/start.png'/>启用", "<img src='images/start.png'/>启用", "<img src='images/start.png'/>未启用", "<img src='images/stop.png'/>启用", "<img src='images/stop.png'/>未启用", "<img src='images/stop.png'/>启用", "2"],
			['2', "mysql探测器", "<img src='images/start.png'/>未启用", "<img src='images/start.png'/>启用", "<img src='images/start.png'/>启用", "<img src='images/stop.png'/>未启用", "<img src='images/stop.png'/>启用", "<img src='images/stop.png'/>启用", "2"],
			['3', "mysql探测器", "<img src='images/start.png'/>启用", "<img src='images/start.png'/>未启用", "<img src='images/start.png'/>启用", "<img src='images/stop.png'/>启用", "<img src='images/stop.png'/>启用", "<img src='images/stop.png'/>未启用", "2"]
		];                                                                        
	

    // shared reader
    var reader = new Ext.data.ArrayReader({}, [
       			{
							name : 'id'
						}, {
							name : 'name'
						}, {
							name : 'status'
						}, {
							name : 'mysql'
						}, {
							name : 'mssql'
						}, {
							name : 'oracle'
						}, {
							name : 'informix'
						}, {
							name : 'db2'
						}, {
							name : 'count'
						}
    ]);

    var store = new Ext.data.GroupingStore({
            reader: reader,
            data: myData,
            sortInfo:{field: 'id', direction: "ASC"}
        });

	var myData1 = [
					['1', 'mysql探测器'],
					['2', '探测全部']
				 ];        


	var sm = new Ext.grid.CheckboxSelectionModel();
	var probegrid = new Ext.grid.GridPanel({
				store : store,
				columns : [sm, {
							id : 'id',
							header : 'id',
							width : 10,
							sortable : true,
							dataIndex : 'id',
							hidden : true
						}, {
							header : '名称',
							width : 70,
							sortable : true,
							dataIndex : 'name'
						}, {
							header : '状态',
							width : 100,
							sortable : true,
							dataIndex : 'status'
						}, {
							header : 'mysql',
							width : 70,
							sortable : true,
							dataIndex : 'mysql'
						}, {
							header : 'mssql',
							width : 70,
							sortable : true,
							dataIndex : 'mssql'
						}, {
							header : 'oracle',
							width : 100,
							sortable : true,
							dataIndex : 'oracle'
						}, {
							header : 'informix',
							width : 100,
							sortable : true,
							dataIndex : 'informix'
						}, {
							header : 'db2',
							width : 100,
							sortable : true,
							dataIndex : 'db2'
						}, {
							header : '数量',
							width : 100,
							sortable : true,
							dataIndex : 'count'
						}],
				sm : sm,

				tbar : [
					'选择工作探测器',
					{
									xtype : 'combo',
									name : 'selprobe',
									id : 'selprobe',
									store : new Ext.data.ArrayStore({
												fields : ['id', 'name'],
												data : myData1
											}),
									valueField : 'id',
									displayField : 'name',
									typeAhead : true,
									mode : 'local',
									triggerAction : 'all',
									editable : false,
									value:'1'
							
		      }, '-',
					{
							text : '添加',
							tooltip : '添加',
							iconCls : 'add',
							handler : function() {							
								EditProbeWindows();
							}
						}, '-', {
							text : '修改',
							tooltip : '修改',
							iconCls : 'modify',
							handler : function() {							
								EditProbeWindows();
							}
						}, '-', {
							text : '删除',
							tooltip : '删除',
							iconCls : 'delete',
							ref : '../removeBtn',
							disabled : true,
							handler : function() {
								var s = grid.getSelectionModel().getSelections();
								for (var i = 0; r = s[i]; i++) {
									store.remove(r);
								}
							}
						}, '-', {
							text : '刷新',
							tooltip : '刷新',
							iconCls : 'refresh',
							handler : function() {							
								store.loadData(myData);
							}
						}],
				
				stripeRows : true,
				autoExpandColumn : 'id',
				stateful : true,
				stateId : 'probegrid'
			});
	probegrid.getSelectionModel().on('selectionchange', function(sm) {
			
			});

	function SearchReturn(data){
		var jsondata = Ext.util.JSON.decode(data);
		
	}
	function reflashgriad(page) {
	}
	
	return probegrid;
}

function EditProbeWindows(){

	var myData = [
					['1', '启用'],
					['2', '禁用']
				 ];        

	var myData1 = [
			['1', "DB1", "mysql", "192.168.0.2", '3306',   'testpc1'],
			['2', "DB2", "mysql", "192.168.0.3", '3306',   'testpc2']
		];                                                                        
	var myData2 = [
			['1', "DB1", "mssql", "192.168.0.2", '3306',   'testpc1'],
			['2', "DB2", "mssql", "192.168.0.3", '3306',   'testpc2']
		];                                                                        
	var myData3 = [
			['1', "DB1", "oracle", "192.168.0.2", '3306',   'testpc1'],
			['2', "DB2", "oracle", "192.168.0.3", '3306',   'testpc2']
		];                                                                        
	var myData4 = [
			['1', "DB1", "informix", "192.168.0.2", '3306',   'testpc1'],
			['2', "DB2", "informix", "192.168.0.3", '3306',   'testpc2']
		];                                                                        
	var myData5 = [
			['1', "DB1", "db2", "192.168.0.2", '3306',   'testpc1'],
			['2', "DB2", "db2", "192.168.0.3", '3306',   'testpc2']
		];                                                                        
	

    // shared reader
    var reader = new Ext.data.ArrayReader({}, [
       			{
							name : 'id'
						}, {
							name : 'server'
						}, {
							name : 'db'
						}, {
							name : 'ip'
						}, {
							name : 'port'
						}, {
							name : 'desc'
						}
    ]);

    var store1 = new Ext.data.GroupingStore({
            reader: reader,
            data: myData1,
            sortInfo:{field: 'id', direction: "ASC"}
        });
    var store2 = new Ext.data.GroupingStore({
            reader: reader,
            data: myData2,
            sortInfo:{field: 'id', direction: "ASC"}
        });
    var store3 = new Ext.data.GroupingStore({
            reader: reader,
            data: myData3,
            sortInfo:{field: 'id', direction: "ASC"}
        });
    var store4 = new Ext.data.GroupingStore({
            reader: reader,
            data: myData4,
            sortInfo:{field: 'id', direction: "ASC"}
        });
    var store5 = new Ext.data.GroupingStore({
            reader: reader,
            data: myData5,
            sortInfo:{field: 'id', direction: "ASC"}
        });



	var sm1 = new Ext.grid.CheckboxSelectionModel();
	var sm2 = new Ext.grid.CheckboxSelectionModel();
	var sm3 = new Ext.grid.CheckboxSelectionModel();
	var sm4 = new Ext.grid.CheckboxSelectionModel();
	var sm5 = new Ext.grid.CheckboxSelectionModel();
	var grid1 = new Ext.grid.GridPanel({
				store : store1,
				columns : [sm1, {
							id : 'id',
							header : 'id',
							width : 10,
							sortable : true,
							dataIndex : 'id',
							hidden : true
						}, {
							header : '服务器',
							width : 70,
							sortable : true,
							dataIndex : 'server'
						}, {
							header : '数据库',
							width : 100,
							sortable : true,
							dataIndex : 'db'
						}, {
							header : '服务器IP',
							width : 70,
							sortable : true,
							dataIndex : 'ip'
						}, {
							header : '服务器端口',
							width : 70,
							sortable : true,
							dataIndex : 'port'
						}, {
							header : '描述',
							width : 100,
							sortable : true,
							dataIndex : 'desc'
						}],
				sm : sm1,
				stripeRows : true,
				autoExpandColumn : 'id',
				stateful : true,
				height : 100,
				stateId : 'grid1'
			});
	var grid2 = new Ext.grid.GridPanel({
				store : store2,
				columns : [sm2, {
							id : 'id',
							header : 'id',
							width : 10,
							sortable : true,
							dataIndex : 'id',
							hidden : true
						}, {
							header : '服务器',
							width : 70,
							sortable : true,
							dataIndex : 'server'
						}, {
							header : '数据库',
							width : 100,
							sortable : true,
							dataIndex : 'db'
						}, {
							header : '服务器IP',
							width : 70,
							sortable : true,
							dataIndex : 'ip'
						}, {
							header : '服务器端口',
							width : 70,
							sortable : true,
							dataIndex : 'port'
						}, {
							header : '描述',
							width : 100,
							sortable : true,
							dataIndex : 'desc'
						}],
				sm : sm2,
				stripeRows : true,
				autoExpandColumn : 'id',
				stateful : true,
				height : 100,
				stateId : 'grid2'
			});
	var grid3 = new Ext.grid.GridPanel({
				store : store3,
				columns : [sm3, {
							id : 'id',
							header : 'id',
							width : 10,
							sortable : true,
							dataIndex : 'id',
							hidden : true
						}, {
							header : '服务器',
							width : 70,
							sortable : true,
							dataIndex : 'server'
						}, {
							header : '数据库',
							width : 100,
							sortable : true,
							dataIndex : 'db'
						}, {
							header : '服务器IP',
							width : 70,
							sortable : true,
							dataIndex : 'ip'
						}, {
							header : '服务器端口',
							width : 70,
							sortable : true,
							dataIndex : 'port'
						}, {
							header : '描述',
							width : 100,
							sortable : true,
							dataIndex : 'desc'
						}],
				sm : sm3,
				stripeRows : true,
				autoExpandColumn : 'id',
				stateful : true,
				height : 100,
				stateId : 'grid3'
			});
	var grid4 = new Ext.grid.GridPanel({
				store : store4,
				columns : [sm4, {
							id : 'id',
							header : 'id',
							width : 10,
							sortable : true,
							dataIndex : 'id',
							hidden : true
						}, {
							header : '服务器',
							width : 70,
							sortable : true,
							dataIndex : 'server'
						}, {
							header : '数据库',
							width : 100,
							sortable : true,
							dataIndex : 'db'
						}, {
							header : '服务器IP',
							width : 70,
							sortable : true,
							dataIndex : 'ip'
						}, {
							header : '服务器端口',
							width : 70,
							sortable : true,
							dataIndex : 'port'
						}, {
							header : '描述',
							width : 100,
							sortable : true,
							dataIndex : 'desc'
						}],
				sm : sm4,
				stripeRows : true,
				autoExpandColumn : 'id',
				stateful : true,
				height : 100,
				stateId : 'grid4'
			});
	var grid5 = new Ext.grid.GridPanel({
				store : store5,
				columns : [sm5, {
							id : 'id',
							header : 'id',
							width : 10,
							sortable : true,
							dataIndex : 'id',
							hidden : true
						}, {
							header : '服务器',
							width : 70,
							sortable : true,
							dataIndex : 'server'
						}, {
							header : '数据库',
							width : 100,
							sortable : true,
							dataIndex : 'db'
						}, {
							header : '服务器IP',
							width : 70,
							sortable : true,
							dataIndex : 'ip'
						}, {
							header : '服务器端口',
							width : 70,
							sortable : true,
							dataIndex : 'port'
						}, {
							header : '描述',
							width : 100,
							sortable : true,
							dataIndex : 'desc'
						}],
				sm : sm5,
				stripeRows : true,
				autoExpandColumn : 'id',
				stateful : true,
				height : 100,
				stateId : 'grid5'
			});

	var AddWindow = new Ext.form.FormPanel({
				frame : true,
				layout : 'form',
				region : 'center',
				xtype : 'fieldset',
				autoScroll:true, 
				bodyStyle : 'padding:10px;',
				items : [
							{
								xtype : 'textfield',
								name : '名称',
								fieldLabel : '名称',
								anchor : '100%'
							},{
								xtype : 'textarea',
								name : 'context',
								fieldLabel : '描述',
								anchor : '100%'
							}, {
									xtype : 'combo',
									name : 'status',
									id : 'status',
									fieldLabel: '状态',
									store : new Ext.data.ArrayStore({
												fields : ['id', 'name'],
												data : myData
											}),
									valueField : 'id',
									displayField : 'name',
									typeAhead : true,
									mode : 'local',
									triggerAction : 'all',
									editable : false,
									value:'1'
							
		        	},{
										xtype: 'checkboxgroup',
										itemCls: 'x-check-group-alt',
										fieldLabel: '数据库',
										columns: 4,
										id:'db1',
										name:'db1',
										items: [
										{boxLabel: 'mysql', name: 'mysql',id:'mysql'}
										]
							}, grid1,{
										xtype: 'checkboxgroup',
										itemCls: 'x-check-group-alt',
										fieldLabel: '数据库',
										columns: 4,
										id:'db6',
										name:'db6',
										items: [
										{boxLabel: 'dbmssql', name: 'dbmssql',id:'dbmssql'}
										]
							}, grid2,{
										xtype: 'checkboxgroup',
										itemCls: 'x-check-group-alt',
										fieldLabel: '数据库',
										columns: 4,
										id:'db3',
										name:'db3',
										items: [
										{boxLabel: 'oracle', name: 'oracle',id:'oracle'}
										]
							}, grid3,{
										xtype: 'checkboxgroup',
										itemCls: 'x-check-group-alt',
										fieldLabel: '数据库',
										columns: 4,
										id:'db4',
										name:'db4',
										items: [
										{boxLabel: 'informix', name: 'informix',id:'informix'}
										]
							}, grid4,{
										xtype: 'checkboxgroup',
										itemCls: 'x-check-group-alt',
										fieldLabel: '数据库',
										columns: 4,
										id:'db5',
										name:'db5',
										items: [
										{boxLabel: 'db2', name: 'db2',id:'db2'}
										]
							}, grid5
						]

			});

	var addWindows = new Ext.Window({
				layout : 'border',
				width : 600,
				height : 600,
				title : "添加",
				modal : true,
				resizable : true,
				maximizable : true,
				iconCls : 'search',
				items : [AddWindow],
				plain : true
			});
	addWindows.addButton({
				text : "确 定",
				handler : function() {
					
					addWindows.close();
				}
			});
	addWindows.addButton({
				text : '取 消',
				handler : function() {
					addWindows.close();
				}
			});
	addWindows.show();
}